---
title: SAIF.Business.View.Provider overview
summary: High-level purpose, scope, and responsibilities for this library.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-21
library: SAIF.Business.View.Provider
reference_type: embedded
---

# SAIF.Business.View.Provider overview

> **Documentation context:** Front-End Application Component
>
> This library is a member project of `LegalMaintenance.sln` and is discovered here via project inclusion. However, every traced consumer in this repository binds to it as a packaged binary reference (`SAIF.BOF.Business.View.Provider` 2.0.23139.2) rather than through a project reference, so it is also distributed and consumed elsewhere as a package. Which context is authoritative for this source could not be resolved from this repository alone.**

`SAIF.Business.View.Provider` is a read-only business/view layer library in the SAIF BOF "View" family. It exposes the provider subject area — providers, provider locations, addresses, tax IDs, relationships, ineligibility periods, provider types, MCO enrollments, services, service contracts, and DCBS cost-charge factors — as strongly typed objects for claim/legal application consumers.

## Purpose
- Provide a strongly typed, read-only surface over the provider subject area used by claim/legal processing: providers, provider locations, addresses, tax IDs, parent/child relationships, ineligibility periods, provider types, MCO enrollments, service assignments, service contracts, and DCBS cost-charge factors.
- Support two coexisting data-access styles: BOF portal/criteria business objects retrieved through `IDataPortalInfo.DataAccessLayer.RetrieveObject`, and direct-query self-loading lists/search that execute SQL via `SqlHelper.ResultSetQuery`.
- Enforce read-only behavior by construction — no `CreateSQL`, `InsertSQL`, `UpdateSQL`, or `DeleteSQL` is implemented anywhere in the library ([BR-DATA-001](business-rules.md#br-data-001-no-write-operations-are-supported)).
- Consumed by claim/legal application managers (`SAIF.Application.Claim.Legal`, `SAIF.Business.Claim.Legal`) to resolve provider and provider-location details, payee addresses, work relationships, and search results.

## Responsibilities
- Expose provider, provider-location, and related subject-area data as strongly typed, serializable objects.
- Provide multi-criteria provider-location search independent of the portal/criteria pattern.
- Attach MCO plan information to enrollments and service contracts via the cross-library call to `SAIF.Business`.
- Guarantee no create/update/delete side effects are possible through any public member.

## Key components
- `clsProvider` / `clsProviderCollection`: provider aggregate root and provider sets.
- `clsProviderLocation` / `clsProviderLocationCollection`: provider-location aggregate root and location sets.
- `clsProviderAddress` / `clsProviderAddressCollection`: provider-location addresses and address selection logic.
- `clsProviderRelationship` / `clsProviderRelationshipCollection`: parent/child provider-location relationships.
- `clsProviderIneligibilityPeriod` / `clsProviderIneligibilityPeriodCollection`: provider-location ineligibility windows.
- `clsProviderTaxID` / `clsProviderTaxIDCollection`: provider tax-ID registrations.
- `clsProviderType` / `clsProviderTypeCollection`: provider type code lookup.
- `clsProviderSearch`: multi-criteria provider-location search engine.
- `clsDCBSCostChargeList`, `clsMCOProviderList`, `clsProviderServiceList`, `clsProviderServiceContractList`: direct-query self-loading lists.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `SAIF.Business.View.Provider/SAIF.Business.View.Provider.vbproj`
- `LegalMaintenance.sln`
